<!--
 * @Descripttion: 
 * @Version: 
 * @Author: gaohj
 * @Date: 2022-12-28 14:24:35
 * @LastEditors: Please set LastEditors
 * @LastEditTime: 2022-12-28 15:08:23
-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 自我介绍  

        // function introduce(name,age,address,country='中国'){
        //     return "我叫" + name + "，今年" + age + "岁，家住" + address+'来自'+country;
        // }

        // // introduce('文恺',18,'淄博'); // 只能拿到结果
        // console.log(introduce('文恺',18,'淄博')); // 可以拿到结果 并将结果打印到控制台
        // console.log(introduce('阿杜',18,'新加波','新加坡')); // 如果没有传入country参数，就使用默认值中国 
        // // 如果我们传入了country参数，就使用传入的值

        // function introduce(name,age=18,address,country='中国'){
        //     return "我叫" + name + "，今年" + age + "岁，家住" + address+'来自'+country;
        // }

        // console.log(introduce('文恺','淄博'));
         // 实参按照顺序依次传给形参 
         // 淄博给到了age address 没有值
         // 我叫文恺，今年淄博岁，家住undefined,来自中国

        // 如何解决上述问题 

        // 形参默认值要放到形参列表的最后面 
        // function introduce(name,address,age=18,country='中国'){
        //     return "我叫" + name + "，今年" + age + "岁，家住" + address+'来自'+country;
        // }

        // console.log(introduce('文恺','淄博'));


        // 实参跟形参的个数不一致问题会怎么样?

        // 形参个数和实参个数一致  实参从左往右依次传给形参

        // function add(a,b,c){
        //     return a+b+c;
        // }

        // console.log(add(1,2,3)); // 1->a 2->b 3->c

        // 形参个数大于实参个数  实参从左往右依次传给形参，剩下的形参没有实参，就是undefined

        // function add(a,b,c){
        //     return a+b+c;
        // }

        // console.log(add(1,2)); // 1->a 2->b undefined->c
        // // NaN  Not a Number 不是一个数字


        // 实参个数大于形参个数  实参从左往右依次传给形参，剩下的实参没有形参，就会被忽略

        function add(a,b,c){
            return a+b+c;
        }

        console.log(add(1,2,3,4,5,6,7,8,9));
        // 1->a 2->b 3->c 4->undefined 5->undefined 6->undefined 7->undefined 8->undefined 9->undefined
        // 4到9都没有被使用到，所以就会被忽略掉


        //练习 
        // 打印指定行数的等腰三角形 默认打印5行
        // 双层for循环 
        // 外边的循环控制行 
        // 内边的循环控制列

        // 行数     空格数   星星的个数
        // 1        4        1
        // 2        3        3
        // 3        2        5
        // 4        1        7
        // 5        0        9 
        function dengyao(num=5){
            for(var i=1;i<=num;i++){
                // 打印空格
                for(var j=1;j<=num-i;j++){
                    document.write('&emsp;');
                }

                // 打印星星
                for(var k=1;k<=2*i-1;k++){
                    document.write('♥'+' ');
                }
                document.write('<br>');
            }   
        }
        

        // 1 

        dengyao();
        document.write('<hr>');
        dengyao(10);



        
        

    </script>
</body>
</html>